Additive manufacturing or rapid prototyping methods for producing objects comprise layer-by-layer solidification of a material, such as a metal powder material, using a high power energy beam, such as a laser beam. A powder layer is deposited on a powder bed in a build chamber and a laser beam is scanned across portions of the powder layer that correspond to a cross-section of the object being constructed. The laser beam melts or sinters the powder to form a solidified layer. After selective solidification of a layer, the powder bed is lowered by a thickness of the newly solidified layer and a further layer of powder is spread over the surface and solidified, as required. In a single build, more than one object can be built, the objects spaced apart in the powder bed.
Usually, an object is not built directly onto a build plate but is supported on the build plate by a series of support structures. For example, the support structures may be a series of cones extending from the build plate to the under-surface of the object. These support structures help to fix the solidified layers to the base, prevent warping of the object during the build and allow the object to be easily separated from the build plate on completion of the build.
To control the apparatus a set of instructions are generated from the geometric data. Such geometric data may define slices of the object corresponding to areas to be melted or sintered in each powder layer and a scan path for the laser to take in melting or sintering the powder layers. Software, such as AutoFab of Marcam Engineering and Magics of Materialise NV, include operations for slicing an object defined in a StereoLithography/Standard Tessellation language (STL) file format to identify layers (slices) of the object to be built in the powder layer and for defining a scan path based upon those slices.
In AutoFab, imported CAD data defining an object is converted into the STL file format. As a first step, the user selects an orientation in which the object is to be built relative to a build platform. Changing the orientation of the object can affect build time, the stresses that the object is subjected to during the build and the number of supports required. Choosing an appropriate orientation can be key to success or failure of the build. Supports are then designed for the selected orientation of the object and combined with the object. The combined object and supports is saved in a .vfx file format. In a single process (from the point of view of the user), the combined object and supports defined in the vfx file is sliced into sections and a scan path is determined for each section, the result saved in a .fab file format. The object and supports as defined by the .fab file can then be positioned within a build volume.
The user can import further objects that are in the .fab format into the build volume. However, it is not possible to import an object that is in one of the other formats (STL, vfx). Accordingly, if one wants to make a change to one of the objects in a build, which requires returning to an earlier file format for that object, either all objects will have to be returned to that earlier stage or the object to be changed will have to be deleted and progressed to the required .fab stage in a separate instance of the application (so in a separate representation of the object in the build volume) and then imported back into the application in which the build comprising multiple objects is being designed. This arrangement does not provide a user friendly, intuitive interface.
Magics also generates supports, slices and a scan path. However, all objects that are to be built together in a single build must first be located on the base plate and then sliced in a single operation.
A problem with the current software is that the slicing operation can take a long time, in some instances hours. Accordingly, a user should ensure that he/she is happy with the orientation of the object(s) and supports before commencing the slicing operation as to change these attributes after the slicing operation would require the object(s) and supports to be re-sliced, introducing significant delays into the build process. However, it is possible to miss regions that require support, even the automatic support generation software of AutoFab and Magics potentially failing to identify regions that require supports. A missing support may only be identified by the user when reviewing the slices. To add one or more missing supports, the user must go back to an earlier stage and re-slice the object, introducing further significant delays.
Furthermore, a user may wish to change the material used to build an object. Changing the material may require parameters, such as hatch distance (the distance between adjacent laser lines of a laser path), spot size and laser power, to be altered. However, to make such alterations, the user must revert to a stage before the slicing operation, requiring the user to re-slice the object and supports for the new parameters.